#include <bits/stdc++.h>

using namespace std;

typedef long long ll;
typedef pair<int, int> pii;

const int MAXN = 310 * 310;

int t, n, m;
int a;
pii _data[MAXN];

bool cmp(pii x, pii y) {
    if (x.first == y.first) return x.second > y.second;
    return x.first < y.first;
}

int main() {
#ifdef LOCAL
    freopen("in.txt", "r", stdin);
    freopen("out.txt", "w", stdout);
#endif
    ios::sync_with_stdio(false), cin.tie(0);
    cin >> t;
    while (t--) {
        cin >> n >> m;
        for (int i = 0; i < n * m; i++) {
            cin >> a;
            _data[i] = { a, i };
        }
        sort(_data, _data + m * n);
        int res = 0;

        for (int i = 0; i < n; i++) {
            int l = i * m, r = l + m;
            sort(_data + l, _data + r, cmp);
            for (int j = l; j < r; j++) {
                for (int k = l; k < j; k++) {
                    // 第left+k个人视力肯定小于等于left+j的
                    // 如果left+k是后进来的 说明出现一个逆序对 贡献+1
                    if (_data[k].second < _data[j].second) res++;
                }
            }
        }
        cout << res << endl;

    }
    return 0;
}